This invention generally relates to input devices for computer based systems, and more particularly, to a method and apparatus for dynamically configuring an input device.
Conventional input devices like keyboards have a set of electro-mechanical keys that generate symbols when they are actuated. A label is permanently affixed to the keycap of each key and indicates the symbol that the key generates upon actuation. The user refers to the symbol on the keycap to know which symbol the key generates when it is actuated. These symbols include, for example, characters of an alphabet, punctuation, and control indicators such as function keys.
User productivity with computer systems having keyboards as input devices depends on the user's ability to locate keys and enter data quickly. People who use keyboards frequently memorize the location of each key and may only look at the keycaps occasionally. Often, a skilled user can enter 90-120 words of the English language per minute into a computer using a keyboard having a standard keyboard layout such as the QWERTY and Dvorak layouts.
In many circumstances, however, the user may need to change the layout on a keyboard. For example, by moving keycaps a user may switch the layout on the keyboard from one standard layout, such as the QWERTY keyboard layout, to another standard layout, such as the Dvorak keyboard layout, to increase typing efficiency. Unfortunately, conventional techniques for changing keycaps, such as described in U.S. Pat. No. 5,387,042 for a Multilingual Keyboard System, are cumbersome and tedious. That patent requires the user to move keycaps from the one keyboard layout, such as the QWERTY keyboard layout, to the new keyboard layout, such as the Dvorak layout. Further, the patent may require users to install special software on the computer system to interpret characters correctly for each different software application or operating system.
These conventional keyboard layout systems also do not address the expanded alphabets and symbols used in many non-English based languages. Many of the alphabets used in Asian languages, for example, require multiple bytes of data for each character or symbol and may include several thousand different symbols. It is a bewildering task for users to swap overlays or keycaps as described in the referenced patent to accommodate the many different symbols in these alphabets. It can also be expensive to buy new specialized keyboards for each of the different languages.
Even conventional keyboards having electronic light emitting diode (LED) and liquid crystal diode (LCD) displays on the keycaps as described in IBM Technical Disclosure Bulletin, 1981, Vol. 23, p. 4611-4613, do not address the problem of changing the keycaps quickly while the user is typing on the system. In an international context, such as an embassy or an international airport, it would be advantageous to quickly change keyboard layouts to accommodate a user's preferred language. The keyboard described in this IBM Technical Disclosure requires selectively loading different software for each language. Loading different software for each language is generally not an option on computer systems used to provide information to travelers and international visitors. Further, conventional computer systems and keyboards are not designed to swap keyboard device drivers efficiently unless the system is rebooted.
Keyboard layouts are also important in the growing area of interactive computer games and computer-based entertainment software. Games and entertainment oriented software packages generally use special keyboard layouts to control or interact with the software. These games require the user to memorize certain keystrokes to operate features of the game. Generally, each game has a different set of input requirements and thus uses a different keyboard layout. Unfortunately, the conventional techniques for swapping keycaps in the aforementioned patent would be too cumbersome for most game users in practice. Likewise, loading a special device driver for each game using the keyboard device described in the aforementioned IBM Technical Disclosure is too tedious and complex for the average game user.
Based on the above discussion, it is desirable to provide a dynamically configurable input device.